from django.db import models

# ----------------------------
# 1. 保单统计表
# ----------------------------
class PolicySummary(models.Model):
    date = models.DateField()  # 日期
    policy_type = models.CharField(max_length=50)  # 保单类型
    policy_count = models.IntegerField()  # 保单本数
    abnormal_count = models.IntegerField()  # 异常笔数
    success_rate = models.CharField(max_length=10)  # 成功率，如 '100%'
    shida = models.IntegerField(null=True, blank=True)  # 实达（可空）
    lirenhang = models.IntegerField(null=True, blank=True)  # 立人行（可空）
    donggang = models.IntegerField(null=True, blank=True)  # 东港（可空）

    class Meta:
        db_table = "policy_summary"

# ----------------------------
# 2. 硬盘监控表
# ----------------------------
class DiskMonitor(models.Model):
    server_ip = models.GenericIPAddressField()  # 服务器 IP
    free_size = models.CharField(max_length=20)  # 剩余空间，如 '722.0G'
    disk_total = models.CharField(max_length=20)  # 总容量
    free_rate = models.CharField(max_length=10)  # 空余比列，如 '72%'

    class Meta:
        db_table = "disk_monitor"

# ----------------------------
# 3. 数据库空间表
# ----------------------------
class DatabaseSpace(models.Model):
    tablename = models.CharField(max_length=100)  # 表名空间名
    tabel_size = models.BigIntegerField()  # 表空间大小（字节）
    table_free = models.BigIntegerField()  # 表空间剩余大小
    table_use = models.BigIntegerField()  # 表空间使用大小
    tabel_size_g = models.CharField(max_length=20)  # 表空间大小(G)
    table_free_g = models.CharField(max_length=20)  # 表空间剩余大小(G)
    table_use_g = models.CharField(max_length=20)  # 表空间使用大小(G)
    free_rate = models.CharField(max_length=10)  # 使用率，如 '27.78%'

    class Meta:
        db_table = "database_space"
